home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c-part1 / 1450 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  1.4 KB

  1. Path: news.iag.net!news
  2. From: jatmon@iag.net (John R Buchan)
  3. Newsgroups: comp.lang.c
  4. Subject: Re: What is wrong in this code?
  5. Date: 14 Jan 1996 04:41:53 GMT
  6. Organization: Internet Access Group, Orlando, Florida
  7. Message-ID: <4da1ih$9ml@news.iag.net>
  8. References: <DL2z7o.2K5@scisun.sci.ccny.cuny.edu>
  9. NNTP-Posting-Host: pm3-orl4.iag.net
  10. X-Newsreader: WinVN 0.99.7
  11.  
  12. In article <DL2z7o.2K5@scisun.sci.ccny.cuny.edu>, sergio@sci.ccny.cuny.edu 
  13. says...
  14. >
  15. >Hello Fellows,
  16. >
  17. >  I am traying to be literate in C and here is a
  18. >problem wich I have been unable to detect:
  19. >
  20. >#include <stdio.h>
  21. >#include <math.h>
  22. >main()
  23. >{
  24. >double x;
  25. >
  26. >printf("\n Enter a number \n");
  27. >
  28. >scanf("%f", &x);
  29. >
  30. >printf("\n %e to the power %e is equal to   ", x , x );
  31. >
  32. >x = pow(x,x); 
  33. >
  34. >printf(" %12.6f \n", x );
  35. >
  36. >}
  37.  
  38. You are telling scanf to read and store a float, then you procede to pass
  39. it the address of a double... and you are surprised by unexpected results?
  40.  
  41. There is a good explanation fo this in the c.l.c faq (Frequently Asked
  42. Question <in fact I saw this one answered just a day or two ago :-)>) list.
  43. It is available for anonymous ftp from rtfm.mit.edu /pub/usenet/comp.lang.c.
  44.  
  45. Basically, scanf requires "%lf" for double and "%Lf" for long double.
  46.  
  47. -- 
  48. John R Buchan           -:|:-     Looking for that elusive FAQ?  ftp to:
  49. jatmon@mail.iag.net     -:|:-     rtfm.mit.edu /pub/usenet-by-group/....
  50.  
  51.